package com.alisls.shequtao.service.goods.service;

import com.alisls.shequtao.common.model.query.PageQuery;
import com.alisls.shequtao.common.model.result.PageResult;
import com.alisls.shequtao.common.service.BaseService;
import com.alisls.shequtao.service.goods.dto.BrandDTO;
import com.alisls.shequtao.service.goods.dto.CategoryDTO;
import com.alisls.shequtao.service.goods.entity.BrandDO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 品牌服务
 *
 * @author Ke Wang
 */
public interface BrandService extends IService<BrandDO>, BaseService<BrandDO, BrandDTO> {

    /**
     * 根据商品分类ID查询品牌
     * @param categoryId 商品分类ID
     * @return 品牌集合
     */
    List<BrandDTO> listBrandsByCategoryId(Long categoryId);

    PageResult<BrandDTO> listBrandByPage(PageQuery query);

    BrandDTO save(BrandDTO brandDTO);

    /**
     * 保存品牌（品牌带有商品分类）
     * @return 品牌DTO
     */
    BrandDTO saveCategoryAndBrand(CategoryDTO categoryDTO, BrandDTO brandDTO);

}
